Multi-mode agent

ABSTRACT

According to an example, a multi-mode agent may include a processor interconnect (PI) interface to receive data from a processor and to selectively route the data to a node controller logic block, a central switch, or an optical interface based on one of a plurality of modes of operation of the multi-mode agent. The modes of operation may include a glueless mode where the PI interface is to route the data directly to the optical interface and bypass the node controller logic block and the central switch, a switched glueless mode where the PI interface is to route the data directly to the central switch for routing to the optical interface, and bypass the node controller logic block, and a glued mode where the PI interface is to route the data directly to the node controller logic block for routing to the central switch and further to the optical interface.

BACKGROUND

Converged infrastructure typically includes the packaging of multiple information technology (IT) components into a single, optimized computing solution. For example, IT organizations may use converged infrastructure or other such techniques to centralize the managementof IT resources, consolidate systems, increase resource utilization rates, and lower costs. Converged infrastructure and other such techniques may be used to provide customers with the ability to implement scale-up. For example, processors may be used to integrate functions of components such as memory controllers and input/output (I/O) bridges, and to interconnect the functionality of these components using high speed links. In order to achieve the fabric bandwidths needed for applications, the bit rates of such high speed links used with processors continue to increase. These bit rates and other factors can impact scalability of solutions related to the foregoing aspects.

BRIEF DESCRIPTION OF DRAWINGS

Features of the present disclosure are illustrated by way of example and not limited in the following figure(s), in which like numerals indicate like elements, in which:

FIG. 1 illustrates an architecture of a multi-mode agent for an optical system fabric for glueless, switched glueless, and glued systems, according to an example of the present disclosure;

FIG. 2 illustrates an architecture of control logic for the multi-mode agent of FIG. 1, according to an example of the present disclosure;

FIG. 3 illustrates an architecture of a glueless system, according to an example of the present disclosure;

FIG. 4 illustrates an architecture applicable to switched glueless and glued systems, according to an example of the present disclosure;

FIG. 5 illustrates a multi-mode agent die for use with glueless, switched glueless, and glued systems, according to an example of the present disclosure;

FIG. 6 illustrates a method for implementing a multi-mode agent, according to an example of the present disclosure;

FIG. 7 illustrates further details of the method for implementing a multi-mode agent, according to an example of the present disclosure; and

FIG. 8 illustrates a computer system, according to an example of the present disclosure.

DETAILED DESCRIPTION

For simplicity and illustrative purposes, the present disclosure is described by referring mainly to examples. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be readily apparent however, that the present disclosure may be practiced without limitation to these specific details. In other instances, some methods and structures have not been described in detail so as not to unnecessarily obscure the present disclosure.

Throughout the present disclosure, the terms “a” and “an” are intended to denote at least one of a particular element. As used herein, the term “includes” means includes but not limited to, the term “including” means including but not limited to. The term “based on” means based at least in part on.

A multi-mode agent for an optical system fabric is described herein for use with glueless, switched glueless, and glued systems. A glueless system may be referred to as a system where a maximum number of sockets in a server is determined by a processor's native protocols and available native link routing mechanisms, and not extended through the use of node controller logic (i.e., the node controller logic block as described herein). Similarly, for a switched glueless system, the maximum number of sockets in a server is still determined by the processor's native protocols, but the number of routes between the sockets supported in the native system may be increased by performing additional address decode, and converting the processor's native protocol as needed across a system fabric. For a glued system, the number of sockets in a system and the number of routes between sockets may both be increased by performing additional address decode, and converting the processor's native protocol as needed across a system fabric.

For glueless systems, the multi-mode agent may be used to improve performance aspects related, for example, to bandwidth and distance. For example, for glueless systems, the multi-mode agent may be used to support low latency needed for such systems by bypassing a node controller logic block and a central switch. For switched glueless and glued systems, the multi-mode agent may be used in conjunction with a switch to improve performance aspects related, for example, to bandwidth and distance. For example, for switched glueless and glued systems, the multi-mode agent and the switch may provide flexibility with respect to grouping of blades (i.e., blades of a server) and scalability with respect to partitioning of the switched glueless and glued systems. The multi-mode agent and the switch may be designated as VLSI components of an optical system fabric. For example, the optical system fabric may include the multi-mode agent and the switch, and other components (e.g., optical manifold, fibers, connectors, etc.) that are needed to implement functions of the multi-mode agent and the switch. The multi-mode agent and the switch may provide for reduction in product development, manufacturing, and field costs associated with such glueless, switched glueless, and glued systems. The multi-mode agent and the switch may also provide for increased flexibility, and serviceability, and improved management of such glueless, switched glueless, and glued systems.

The multi-mode agent may be implemented as an application specific integrated circuit (ASIC). By using a common multi-mode agent for glueless systems, and a common multi-mode agent and switch for switched glueless and glued systems, a common blade may be used for all systems. The use of a common multi-mode agent and switch may provide for reduction in costs related to research and development, manufacturing, and field costs related to implementation of converged infrastructure and other such techniques.

The design of the multi-mode agent and the switch may be based on optical module technology. The multi-mode agent may interface processors and peripheral component interconnect express (PCIe) cards to an optical system fabric. According to an example, the processors may include point-to-point processor interconnect (PI) links, such as INTEL QUICKPATH INTERCONNECT (QPI) links. The multi-mode agent may include a plurality of coherency, PCIe, and optical links. According to an example, the optical links may be one-half of the width of the coherency links (e.g., QPI links), and execute at greater than twice the bit rate of the coherency links. Based on this configuration, an optical link may be bandwidth matched to a coherency link to minimize fabric latency, and may further reduce overall system cost by reducing a number of lasers, photo-detectors, and optical fibers. The switch of the optical system fabric may be a non-blocking switch with all optical links. The switch may be used when topologies exceed what can be built using directly connected multi-mode agents (e.g., for a glueless system).

According to an example, a multi-mode agent may include a PI interface to receive data from a processor and to selectively route the data directly to a node controller logic block, a central switch, or an optical interface based on one of a plurality of modes of operation of the multi-mode agent. The plurality of modes of operation of the multi-mode agent may include a glueless mode of operation where the PI interface is to route the data directly to the optical interface and bypass the node controller logic block and the central switch, a switched glueless mode of operation where the PI interface is to route the data directly to the central switch for routing to the optical interface, and bypass the node controller logic block, and a glued mode of operation where the PI interface is to route the data directly to the node controller logic block for routing to the central switch and further to the optical interface.

FIG. 1 illustrates an architecture of a multi-mode agent 100 for use with glueless, switched glueless, and glued systems, according to an example of the present disclosure. Referring to FIG. 1, the multi-mode agent 100 is depicted as including a point-to-point processor interconnect (PI) interface (e.g., one of the PI interfaces 101 a-101 d) for a PI link (e.g., one of the associated PI links 102 a-102 d) to processors. For example, the multi-mode agent 100 may include a QUICKPATH INTERCONNECT (QPI) interface for a QPI link to processors, such as, INTEL EX or EP processors that include QPI links. In another example, the multi-mode agent 100 may include a Hypertransport (HT) interface for an HT link to processors such as AMD processors. Alternate interfaces for other processor types may also be used. The QPI link may also be generally designated as a coherent link. In the example of FIG. 1, four PI interfaces 101 a-101 d, and four associated PI links 102 a-102 d are shown. However, those skilled in the art would appreciate in view of this disclosure that fewer or additional PI interfaces and corresponding PI links, and other components of the multi-mode agent 100 may be used as needed.

A switched glueless bypass (e.g., one of the switched glueless bypasses 103 a-103 d) may be provided for linking the PI interface to a central switch 104, and operation of the multi-mode agent 100 in a switched glueless mode.

A glueless bypass (e.g., one of the glueless bypasses 105 a-105 d) may be provided for linking the PI interface to an optical interface (e.g., one of the optical interfaces 106 a-106 d), and operation of the multi-mode agent 100 in a glueless mode.

Each optical interface may be linked via an optical link (e.g., one of the optical links 107 a-107 d) to an optical manifold as described with reference to FIGS. 3 and 4.

Each PI interface may be linked to a node controller logic block (e.g., one of the node controller logic blocks 108 a-108 d) via a link (e.g., one of the associated links 109 a-109 d). The node controller logic block may provide for expansion of an optical system fabric, for example, by allowing additional sockets to be connected together in a server. The node controller logic block may also provide for address decode and routing of packets. The node controller logic block may include a node controller logic specific protocol to communicate with other node controller logic blocks on other agents, as described with reference to FIG. 3. The node controller logic blocks may include internal components that can generally be classified as filter cache control blocks and remote request control blocks. The node controller logic blocks, and particularly the remote request control blocks of the node controller logic blocks may serve as intermediaries between the optical system fabric and the remaining portions of the multi-mode agent 100. The filter cache control blocks allow for communication between the respective node controller logic blocks. The node controller logic blocks may provide a filter cache architecture in which multiple local cache coherency domains may be bridged together using a global coherency domain so that a scalable, shared memory multiprocessor system can be built using microprocessors with “on-chip” memory controllers.

Each node controller logic block may be linked to the central switch 104 via a node controller logic block to central switch link (e.g., one of the node controller logic block to central switch links 110 a-110 d). The central switch 104 may thus link the node controller logic block to any an optical interface.

The central switch 104 may be linked to the optical interface via a central switch to optical interface link (e.g., one of the central switch to optical interface links 111 a-111 d).

The multi-mode agent 100 may further include a PCIe card interface (e.g., one of the PCIe interfaces 112 a-112 d (also designated as PCIe card interfaces)) for a PCIe link (e.g., one of the associated PCIe links 113 a-113 d). In the example of FIG. 1, each of PCIe links may include eight lanes. Further, the PCIe card interface may be linked to the central switch 104 by a PCIe card interface to central switch link (e.g., one of the PCIe card interface to central switch links 114 a-114 d). The PCIe card interface may receive transactions from any PCIe link source such as input/output (I/O) cards, PCIe root port host bridges, or PCIe switches, encapsulate the transactions into packets based on a fabric specific protocol for a glueless, switched glueless, or glued system, and forward the encapsulated packets to the central switch 104, which may further forward the packets to a specific optical interface.

The central switch 104 may provide for receiving and forwarding of packets between different PI interfaces (e.g., one of the PI interfaces 101 a-101 d), node controller logic blocks (e.g., one of the node controller logic blocks 108 a-108 d), PCIe card interfaces (e.g., one of the PCIe card interfaces 112 a-112 d), and optical interfaces (e.g., one of the optical interfaces 106 a-106 d).

Referring to FIGS. 1 and 2, FIG. 2 illustrates an architecture of control logic for the multi-mode agent 100 of FIG. 1, according to an example of the present disclosure. The control logic for the multi-mode agent 100 may include a multi-mode control module 115 to control operation of the multi-mode agent 100 in one of three modes of operation that include glueless, switched glueless, and glued modes. For example, the multi-mode control module 115 may control operation of the multi-mode agent 100 in a glueless mode of operation as described herein with respect to the glueless system 120 of FIG. 3. Further, the multi-mode control module 115 may control operation of the multi-mode agent 100 in switched glueless or glued modes of operation as described herein with respect to the switched glueless or glued systems 140 illustrated in FIG. 4.

Referring to FIGS. 1 and 3, FIG. 3 illustrates an architecture of a glueless system 120, according to an example of the present disclosure. Referring to FIG. 3, the glueless system 120 is depicted as including a plurality of blades (e.g., blades 121 a-121 d) interconnected by an optical manifold 122. For the example of FIG. 3, four blades 121 a-121 d are shown. However those skilled in the art would appreciate in view of this disclosure that fewer or additional blades may be used. Each blade may respectively include one of the multi-mode agents 100 (e.g., agents 100 a-100 d). Components such as the PI links 102 a-102 d, optical links 107 a-107 d, and PCIe links 113 a-113 d of the multi-mode agents 100 a-100 d are shown in FIG. 3. Each of the multi-mode agents 100 a-100 d may interface processors to the optical manifold 122 of the optical fabric system. For example, the multi-mode agent 100 a may interface processors 123 a and 123 b (i.e., CPUs 123 a and 123 b) to the optical manifold 122. Examples of processors may include INTEL EX or EP processors with QPI links, as described below, or other processors such as AMD processors, etc. The example of the glueless system 120 may further include links for PCIe mezzanine (mez) cards that include I/O adapters. For example, the links 127 for PCIe mez cards may each include 16 lanes.

Referring to FIG. 3, in the example shown, the glueless system 120 may include four blades 121 a-121 d, with each blade respectively including an agent 100 a-100 d and sockets with one link between any two processors (i.e., CPUs), and two links from each processor to the associated agent. Based on the configuration of FIG. 3, components may be placed on a blade (e.g., the blade 121 a) to optimize aspects such as electrical interconnect performance, power, and cooling, without concern for the length of the optical links to agents on the other blades (e.g., the blades 121 b-121 d). Based on the configuration of FIG. 3, the multi-mode agents 100 a-100 d may convert each electrical PI link to optics. Further, the multi-mode agents 100 a-100 d may internally bypass the node controller logic block (e.g., the node controller logic blocks 108 a-108 d) and the central switch 104 by using respective glueless bypasses (e.g., one of the glueless bypasses 105 a-105 d) to minimize latency for improved performance. The multi-mode agents 100 a-100 d may therefore each include the glueless bypasses 105 a-105 d as shown on the bottom right of FIG. 3. The glueless mode for the multi-mode agent 100 may also be designated as a pass-through mode.

For the example of the glueless system 120 of FIG. 3, the optical manifold 122 may be used to transfer packets and other information between blades. For example, the optical links 107 a-107 d of each agent 100 a-100 d may use the optical manifold 122 to transfer packets and other information between the blades 121 a-121 d. Thus, the optical manifold 122 may provide the interconnectivity between the multi-mode agents 100 a-100 d as needed for communication between the blades 121 a-121 d. In order to change the configuration of the glueless system 120, the optical manifold is changed as needed (e.g., an optical manifold prewired for two sets of four sockets may be replaced with an optical manifold prewired for eight sockets) to modify the connectivity between blades.

For the example of the glueless system 120 of FIG. 3, the PI interface (e.g., one of the PI interfaces 101 a-101 d) for an agent (e.g., the multi-mode agent 100 a) may receive a PI packet from a processor (e.g., the CPU 123 a) and relay the PI packet directly to an optical interface (e.g., the appropriate optical interface 106 a-106 d). In relaying the PI packet directly to an optical interface, the PI packet may be converted from a PI protocol to an internal protocol specific to the glueless system and then to an optical version of PI.

For the glueless system 120, the blades 121 a-121 d may be in fixed locations in a chassis (i.e., the chassis for the glueless socket system), which may limit expansion of input/output (I/O) beyond what is available on each blade. Such limitations may be addressed by using switches, as shown in FIG. 4 with components of the glueless system of FIG. 3. For example, referring to FIG. 4, FIG. 4 illustrates an architecture applicable to switched glueless and glued systems 140, according to an example of the present disclosure. The switched glueless and glued systems 140 are illustrated in the architecture of FIG. 4 to facilitate the similar description thereof. For an actual switched glueless system architecture, the glueless system architecture of FIG. 3 may be modified by replacing the optical manifold 122 of FIG. 3 with optical manifold 148 and switches 142 a-142 d such that the four switch topology still connects the links (e.g., optical links 107 a-107 d), and the connections, which are no longer fixed routes, go through the switches 142 a-142 d.

Referring to FIG. 4, the switched glueless system may generally partition a configuration that includes, for example, greater than 8 sockets, into configurations that include multiple 2 to 8 socket servers (e.g., one to four blades). Referring to FIG. 4, while an individual server in the switched glueless system may be limited in size by the native protocol of processors (e.g., 8 sockets, etc.), blades (e.g., blades 141 a and 141 b (similar to blades 122 a-122 d of FIG. 3)) may be placed anywhere in switched glueless or glued systems to expand the capacity of the server enclosure for example, to 64 sockets. The size of each server instance may be dynamically increased or decreased, for example, by re-directing PI traffic within switches (e.g., switches 142 a-142 d). The re-direction of PI traffic within the switches (e.g., switches 142 a-142 d) may also provide for on-line repair of blades (e.g., blades 141 a and 141 b). PCIe links (e.g., PCIe links 143 a-143 d) from the processors (e.g., CPUs 144 a, 144 b, 145 a, and 145 b) may be routed through agents (e.g., agents 146 a and 146 b) and switches (e.g., switches 142 a-142 d) to I/O expanders (e.g., a plurality of I/O expander 147) to increase the I/O connectivity of the system. For a switched glueless system, the node controller logic block (e.g., the node controller logic blocks 108 a-108 d as shown in FIG. 1) inside the agent may be bypassed to reduce latency. For example, the switched glueless bypass (e.g., the switched glueless bypasses 103 a-103 d) as shown in FIG. 1 may be used to bypass the node controller logic block. For individual servers whose socket count is less than or equal to the maximum natively supported by the processor, the switched glueless system provides similar flexibility as a glued system, without the performance impact of the node controller logic block. The switched glueless and glued systems 140 may further include an optical manifold 148 to provide optical interconnectivity for optical links (e.g., the optical links 107 a-107 d as shown in FIG. 1) with switches (e.g., switches 142 a-142 d). In the example of FIG. 4, the optical manifold 148 may be a pass-through optical manifold.

For the switched glueless and glued system example of FIG. 4, for the agents 146 a and 146 b respectively disposed in the blades 141 a and 141 b, the PCIe links (e.g., PCIe links 143 a-143 d) from the processors (e.g., CPUs 144 a, 144 b, 145 a, and 145 b) may be routed through agents (e.g., the agents 146 a and 146 b) and switches (e.g., switches 142 a-142 d) to I/O expanders (e.g., a plurality of I/O expander 147) to increase the I/O connectivity of the system. The I/O expanders (e.g., a plurality of I/O expander 147) may similarly include agents (e.g., agents 149 a and 149 b). For the agents 149 a and 149 b, PCIe links (e.g., PCIe links 150 a-150 d) may communicate directly with I/O cards. Therefore, in the example of FIG. 4, the switches 142 a-142 d may be used to route traffic between any of the agents 146 a, 146 b, 149 a, and 149 b.

For the example of the switched glueless system 140 of FIG. 4, the PI interface (e.g., one of the PI interfaces 101 a-101 d) for an agent (e.g., the agent 146 a) may receive a PI packet from a processor (e.g., the CPU 144 a) and relay the PI packet to the central switch 104, which may further relay the PI packet to another PI interface (e.g., one of the other PI interfaces 101 a-101 d), or to an optical interface (e.g., the appropriate optical interface 106 a-106 d). Similarly, PCIe packets may be relayed between different PCIe links. In relaying the PI packet to the central switch 104, the PI packet may be wrapped in a customized fabric packet wrapper specific to the switched glueless system 140 such that the central switch 104 may recognize the wrapped PI packet and relay the wrapped PI packet as needed.

With continued reference to FIG. 4, for servers that are to be scaled beyond a maximum number of sockets supported by native CPU protocols, glued systems may be created using similar components and topology as switched glueless systems, for example, by initiating the node controller logic (e.g., one of the node controller logic blocks 108 a-108 d) within the multi-mode agent 100. Therefore, for glued systems, compared to glueless systems that use a glueless bypass (e.g., one of the glueless bypasses 105 a-105 d) and switched glueless systems that use a switched glueless bypass (e.g., one of the switched glueless bypasses 103 a-103 d) of an agent, the node controller logic (e.g., one of the node controller logic blocks 108 a-108 d) may be initiated to route packets from a PI interface (e.g., one of the PI interfaces 101 a-101 d) to the central switch 104.

For the example of the glued system 140 of FIG. 4, the PI interface (e.g., one of the PI interfaces 101 a-101 d) for an agent (e.g., the agent 146 a) may receive a PI packet from a processor (e.g., the CPU 144 a) and relay the PI packet to a node controller logic block (e.g., one of the node controller logic blocks 108 a-108 d) and then to the central switch 104, which may further relay the PI packet to another node controller logic block (e.g., one of the node controller logic blocks 108 a-108 d), to a PCIe interface (e.g., the appropriate PCIe interface 112 a-112 d), or to an optical interface (e.g., the appropriate optical interface 106 a-106 d). In relaying the PI packet to the node controller logic block and then to the central switch 104, the PI packet may be wrapped in a customized fabric packet wrapper specific to the glued system 140 such that the central switch 104 may recognize the wrapped PI packet and relay the wrapped PI packet as needed. For the glued system 140, the PI packet may be wrapped to modify aspects such as addresses related to additional nodes that are supported by the node controller logic block of the glued system 140.

Referring to FIGS. 1-5, FIG. 5 illustrates a multi-mode agent die 160 for use with glueless, switched glueless, and glued systems, according to an example of the present disclosure. The multi-mode agent die 160 may include physical (PHY) layer logic blocks 161 (i.e., PI or QPI links) and adjacently disposed optical links 162. The multi-mode agent die 160 may further include optical system fabric (oSF) blocks 163 (i.e., optical interfaces). Node controller blocks 164 may be disposed adjacent SRAMs 165. The multi-mode agent die 160 may further include QPI (or PI) interfaces 166, PCIe (or PI) interfaces 167, PCIe (or PI) links 168, switch 169 (i.e., central switch), switches 170, and management debug clocks 171. The management debug clocks 171 may control management functions, and include clock controllers and a debug clock. The positioning of the fabric links in the middle of the multi-mode agent die 160 (which is illustrated as being implemented as an ASIC) and the QPI links (or PI links) above and below the fabric links may provide the glueless system configuration with low latencies from QPI (or PI) to optics. For operation of the multi-mode agent die 160 in switched glueless and glued modes, such switched glueless and glued systems may likewise benefit from the QPI (or PI) to optical link proximity for operation traffic.

Referring to FIGS. 1-5, for operation of the multi-mode agent die 160 in a glueless mode (e.g., with the glueless system 120 of FIG. 3), the PHY layer logic blocks 161, optical links 162, oSF blocks 163, QPI interfaces 166, and management debug clocks 171 may be used on the multi-mode agent die 160.

For operation of the of the multi-mode agent die 160 in a switched glueless mode (e.g., with the switched glueless system 140 of FIG. 4), the PHY layer logic blocks 161, optical links 162, oSF blocks 163, QPI interfaces 166, PCIe interfaces 167, PCIe links 168, switch 169, and management debug clocks 171 may be used on the multi-mode agent die 160.

For operation of the of the multi-mode agent die 160 in a glued mode (e.g., with the glued system 140 of FIG. 4), all of the components of the multi-mode agent die 160 may be used.

For the multi-mode agent die 160, unused blocks may be power gated such that power consumption of the multi-mode agent die 160 may be reduced in glueless and switched glueless systems. For example, in a glueless system, the node controller logic block, the PCIe (or PI) interfaces and the central switch may be power gated. In a switched glueless system, the node controller logic block may be power gated.

The modules (e.g., the module 115) and components of the multi-mode agent 100 and the glueless, switched glueless, and glued systems described herein that perform various functions, may also include machine readable instructions stored on a non-transitory computer readable medium. In addition, or alternatively, the modules and components of the multi-mode agent 100 and the glueless, switched glueless, and glued systems described herein may include hardware or a combination of machine readable instructions and hardware.

FIGS. 6 and 7 respectively illustrate flowcharts of methods 200 and 300 for implementing a multi-mode agent, corresponding to the example of the multi-mode agent 100 whose construction is described in detail above. The methods 200 and 300 may be implemented on the multi-mode agent 100 with reference to FIG. 1 by way of example and not limitation. The methods 200 and 300 may be practiced in other apparatus (e.g., other multi-mode agents, glueless, switched glueless, glued systems, etc.).

Referring to FIG. 6, for the method 200, at block 201, data may be received. For example, referring to FIGS. 1 and 3, the PI interfaces 101 a-101 d may receive data from a processor (e.g., a CPU).

At block 202, a mode of operation of the multi-mode agent that includes a plurality of modes of operation may be controlled. For example, referring to FIG. 2, the multi-mode control module 115 may control operation of the multi-mode agent 100 in one of three modes of operation that include glueless, switched glueless, and glued modes. The multi-mode control module 115 may be provided in the multi-mode agent die 160, for example, within the management debug clocks 171.

At block 203, the data may be directly routed to a node controller logic block, a central switch, or an optical interface based on the mode of operation of the multi-mode agent. For example, referring to FIG. 1, the PI interface (e.g., one of the PI interfaces 101 a-101 d) may route the data to a node controller logic block (e.g., one of the node controller logic blocks 108 a-108 d), the central switch 104, or an optical interface (e.g., one of the optical interfaces 106 a-106 d) based on the mode of operation of the multi-mode agent. The modes of operation may include a glueless mode of operation where a PI interface is to route the data directly to the optical interface and bypass the node controller logic block and the central switch, a switched glueless mode of operation where the PI interface is to route the data directly to the central switch for routing to the optical interface, and bypass the node controller logic block, and a glued mode of operation where the PI interface is to route the data directly to the node controller logic block for routing to the central switch and further to the optical interface.

Referring to FIG. 7, for the method 300, at block 301, data may be received.

At block 302, a mode of operation of the multi-mode agent that includes a plurality of modes of operation may be controlled.

At block 303, the data may be directly routed to a node controller logic block, a central switch, or an optical interface based on the mode of operation of the multi-mode agent.

At block 304, an optical manifold linked to the optical interface may be used to route the data from a multi-mode agent of a first blade to a multi-mode agent of a second blade. For example, referring to FIGS. 1 and 3, the optical manifold 122 linked to an optical interface (e.g., one of the optical interfaces 106 a-106 d) may be used to route the data from a multi-mode agent (e.g., one of the multi-mode agents 100 a-100 d) of a first blade (e.g., one of the blades 121 a-121 d) to a multi-mode agent of a second blade. Further, referring to FIG. 4, the optical manifold may be a pass-through optical manifold (e.g., the optical manifold 148). The optical system fabric that includes the multi-mode agents may further include a plurality of switches (e.g., switches 142 a-142 d) to route the data from the multi-mode agent of the first blade (e.g., the blade 141 a) to the multi-mode agent of the second blade (e.g., the blade 141 b). The plurality of switches may further route the data to a multi-mode agent of an input/output (I/O) expander (e.g., the I/O expander 147).

FIG. 8 shows a computer system 400 that may be used with the examples described herein. The computer system represents a generic platform that includes components that may be in a server or another computer system. The computer system 400 may be used as a platform for the multi-mode agent 100. The computer system 400 may execute, by a processor or other hardware processing circuit, the methods, functions and other processes described herein. These methods, functions and other processes may be embodied as machine readable instructions stored on a computer readable medium, which may be non-transitory, such as hardware storage devices (e.g., RAM (random access memory), ROM (read only memory), EPROM (erasable, programmable ROM), EEPROM (electrically erasable, programmable ROM), hard drives, and flash memory).

The computer system 400 includes a processor 402 that may implement or execute machine readable instructions performing some or all of the methods, functions and other processes described herein. Commands and data from the processor 402 are communicated over a communication bus 404. The computer system also includes a main memory 406, such as a random access memory (RAM), where the machine readable instructions and data for the processor 402 may reside during runtime, and a secondary data storage 408, which may be non-volatile and stores machine readable instructions and data. The memory and data storage are examples of computer readable mediums. The memory 406 may include a multi-mode module 420 including machine readable instructions residing in the memory 406 during runtime and executed by the processor 402. The multi-mode module 420 may include the components of the multi-mode agent 100 shown in FIG. 1.

The computer system 400 may include an I/O device 410, such as a keyboard, a mouse, a display, etc. The computer system may include a network interface 412 for connecting to a network. Other known electronic components may be added or substituted in the computer system.

What has been described and illustrated herein is an example along with some of its variations. The terms, descriptions and figures used herein are set forth by way of illustration only and are not meant as limitations. Many variations are possible within the spirit and scope of the subject matter, which is intended to be defined by the following claims—and their equivalents—in which all terms are meant in their broadest reasonable sense unless otherwise indicated. 

What is claimed is:
 1. A multi-mode agent comprising: a processor interconnect (PI) interface to receive data from a processor and to selectively route the data directly to a node controller logic block, a central switch, or an optical interface based on one of a plurality of modes of operation of the multi-mode agent, wherein the plurality of modes of operation of the multi-mode agent include: a glueless mode of operation where the PI interface is to route the data directly to the optical interface and bypass the node controller logic block and the central switch, a switched glueless mode of operation where the PI interface is to route the data directly to the central switch for routing to the optical interface, and bypass the node controller logic block, and a glued mode of operation where the PI interface is to route the data directly to the node controller logic block for routing to the central switch and further to the optical interface.
 2. The multi-mode agent of claim 1, wherein the multi-mode agent is implemented as an application specific integrated circuit (ASIC).
 3. The multi-mode agent of claim 1, wherein the PI interface is a QUICKPATH INTERCONNECT (QPI) interface.
 4. The multi-mode agent of claim 1, further comprising: a peripheral component interconnect express (PCIe) interface to receive input/output (I/O) transactions from the processor or I/O cards.
 5. The multi-mode agent of claim 1, wherein the data is received as packets, and wherein the PI interface is to encapsulate the packets based on one of the plurality of modes of operation of the multi-mode agent.
 6. An optical system fabric comprising: a plurality of multi-mode agents, each of the multi-mode agents includes: a processor interconnect (PI) interface to receive data from a processor and to selectively route the data directly to a node controller logic block, a central switch, or an optical interface based on one of a plurality of modes of operation of a multi-mode agent, wherein the plurality of modes of operation of the multi-mode agent include: a glueless mode of operation where the PI interface is to route the data directly to the optical interface and bypass the node controller logic block and the central switch, a switched glueless mode of operation where the PI interface is to route the data directly to the central switch for routing to the optical interface, and bypass the node controller logic block, and a glued mode of operation where the PI interface is to route the data directly to the node controller logic block for routing to the central switch and further to the optical interface; and an optical manifold linked to the optical interface to route the data from a multi-mode agent of a first blade to a multi-mode agent of a second blade, wherein the plurality of multi-mode agents include the multi-mode agent of the first blade and the multi-mode agent of the second blade.
 7. The optical system fabric of claim 6, wherein the optical manifold is a pass-through optical manifold, the optical system fabric further comprises: a plurality of switches to route the data from the multi-mode agent of the first blade to the multi-mode agent of the second blade.
 8. The optical system fabric of claim 7, wherein the plurality of switches are to route the data to a multi-mode agent of an input/output (I/O) expander.
 9. The optical system fabric of claim 8, wherein the multi-mode agent of the I/O expander includes a peripheral component interconnect express (PCIe) interface to receive input/output (I/O) transactions from the processor or I/O cards.
 10. The optical system fabric of claim 6, wherein the multi-mode agents are implemented as application specific integrated circuits (ASICs).
 11. The optical system fabric of claim 6, wherein the PI interface is a QUICKPATH INTERCONNECT (QPI) interface.
 12. The optical system fabric of claim 6, wherein the data is received as packets, and wherein the PI interface is to encapsulate the packets based on one of the plurality of modes of operation of the multi-mode agent.
 13. A method of implementing a multi-mode agent, the method comprising: receiving data; controlling a mode of operation of the multi-mode agent that includes a plurality of modes of operation; and selectively routing the data directly to a node controller logic block, a central switch, or an optical interface based on the mode of operation of the multi-mode agent, wherein the plurality of modes of operation of the multi-mode agent include: a glueless mode of operation where a processor interconnect (PI) interface is to route the data directly to the optical interface and bypass the node controller logic block and the central switch, a switched glueless mode of operation where the PI interface is to route the data directly to the central switch for routing to the optical interface, and bypass the node controller logic block, and a glued mode of operation where the PI interface is to route the data directly to the node controller logic block for routing to the central switch and further to the optical interface.
 14. The method of claim 13, further comprising: implementing the multi-mode agent as an application specific integrated circuit (ASIC).
 15. The method of claim 13, wherein the PI interface is a QUICKPATH INTERCONNECT (QPI) interface. 